package com.fm.financemanage.response;


import java.util.HashMap;

public class Callback<T> {
    public static <T> JsonData<T> success(String status, String message, T data)
    {
        JsonData<T> jsonData = new JsonData<T>();
        jsonData.setSuccess(true);
        jsonData.setStatus(status == null ? "" : status);
        jsonData.setMessage(message == null ? "" : message);
        if(data==null){
            jsonData.setData((T)new HashMap<String,String>());
        }else{
            jsonData.setData(data);
        }

        return jsonData;
    }
    public static  <T> JsonData<T> success(String status, String message)
    {
        JsonData<T> jsonData = new JsonData<T>();
        jsonData.setSuccess(true);
        jsonData.setStatus(status == null ? "" : status);
        jsonData.setMessage(message == null ? "" : message);
        return jsonData;
    }
    public static  <T> JsonData<T> fail(String status, String message, T data)
    {
        JsonData<T> jsonData = new JsonData<T>();
        jsonData.setSuccess(false);
        jsonData.setStatus(status == null ? "" : status);
        jsonData.setMessage(message == null ? "" : message);
        if(data==null){
            jsonData.setData((T)new HashMap<String,String>());
        }else{
            jsonData.setData(data);
        }
        return jsonData;
    }

    public static <T> JsonData<T> fail(String status, String message)
    {
        JsonData<T> jsonData = new JsonData<T>();
        jsonData.setSuccess(false);
        jsonData.setStatus(status == null ? "" : status);
        jsonData.setMessage(message == null ? "" : message);
        return jsonData;
    }
}
